23

» WarCraft 3 / Помогите найти рпг

Похожие вопросы:

ответ
не знаю даже поищи СТАРЕЙШИХ ИГРОКОВ У ВАРКРАФТА и попроси у них все карты которые они имеют
а дальше пороверь все карты и найди её если не найдёш значит она тебе приснилась)

23

» WarCraft 3 / Анимация смерти

Похожие вопросы:

ответ
Эмм.
Копируешь кадр (ПКМ - копировать кадр).
Вставляешь в линейку новой анимации.
Всё.
ответ
у Сларка это даммик, который двигается вместе с ним, и потом ремувится
у Баланара - лопается, когда день наступает... присмотришь получше
ответ
XGM Bot:
Похожие вопросы:

ответ
8gabriel8, точно. Их там нет. Я перепутал. Не в константах, а в интерфейсе.
Текст - Общий - Жульничество разрешено
ответ
изменение уровня способности у мертвого юнита. апгрейдом или триггерно, неважно. скорее всего, способность в спелбуке
проверь AGg0
ответ
Воу... Джаз не обязательно изучать, всё это можно сделать и на ГУИ, тем более такую простую способность. На этом сайте есть тема "Заклинания на заказ". Заказывай, жди, получай, изучай. Если прям горит, могу сделать для тебя сам.

ответ
Chudo Derewo, зачем взламывать? С архива модель достань.

23

» WarCraft 3 / Как сделать две способности на основе одной у юнита.

Похожие вопросы:

ответ
Zhenya17, ты хотя бы основные статьи прочти и учебник 1 класса по логике
какой по твоему должна быть применяемая способность если способность никто не применяет?
когда прочтёшь то пикай на карте нужных тебе героев и удаляй у них нужную тебе способность

23

» WarCraft 3 / Обновление карты

Похожие вопросы:

ответ
ну или просто всё сделать и залить ресурсом через плюсик в правом верхнем углу
ответ
DemonoiD, Нет, да и лимит не всегда был 8 мб, недавно с четырёх подняли (относительно времени жизни варкравта).
Снова есть ретурн баг, подгружаешь микс архив всем кто запустил карту без их ведома и подключаешь, пусть улыбаются.
Правда могут быть проблемы с некоторыми античитами.
ответ
Тут сможет помочь только "мемхак", который выполнит загрузку необходимых файлов и по свей сути выполнит работу трояна. В остальном автоматически без хостбота этого сделать нельзя.
ответ
РБ - ниже 1,24 остальная ересь 1,24+, мемхак до 1,27b дальше идти смысла пока вообще нет.
ответ
Верни стандартную функцию создания стартовых юнитов, поставь игровую паузу, замени всех юнитов на свои аналоги, возобнови игру (я так же дополнительно прячу всех юнитов на этот период). Не забудь удалить все проклятые/оплетённые рудники, если нужно. Чтобы заново оплести рудник после замены юнитов (если заменял древа жизни), используй триггер "Боевая единица - (приказ без цели) Оплести ближайший рудник" (перед оплетением поставь паузу 0.1 секунды чтобы после удаления успел заново появится оригинальный рудник).

23

» WarCraft 3 / Дом

Похожие вопросы:

ответ
nvc123:
Nyanta, для начала дебаг сделать как написано в статье
Сделал. Триггер работает как нужно. При входе всегда пишет "Вход!", при выходе - "Выход!". Порядок текста не меняется.
В общем, проблема, почему-то, была в названии анимации. Открыл модель через MdlVis и назвал анимации "родными" словами Stand, Walk, Death. Стало работать как надо.
Спасибо Rare за
Rare:
ставь скорость анимации на 0%
И nvc123 за то, что натолкнул на мысль этим)
nvc123:
конфликт триггеров,неправильный проигрыш анимаций
ответ
Парадиз, тогда ставишь крышу как юнита со способностью москиты, неуязвимый и без возможности двигаться. Далее триггер:
Событие - юнит входит в область (дом).
Действие - Анимация - Change (крыша) vertex coloring to 100% 100% 100% with 90% transparency.
ответ
Если нужно отлавливать событие не через область - то делай проверку на взаимодействие с юнитами или декорациями.
ответ
Vlad242, её нужно установить в особое место где ци неба и земли соединяются воедино

23

» WarCraft 3 / Игровой интерфейс

Принятый ответ
Похожие вопросы:

ответ
War3.mpq/UI/Console
War3.mpq/UI/Widgets/Console
ответ
В правом верхнем углу у тебя есть поиск - гуглишь в нём всякие иконки и делаешь mix-архив.
ответ
Да, конечно. Есть 2 проверенных способа:
  1. Пишем свой вар и выставляем любые желаемые цвета
  2. Переписываем .dll и в ней указывает цвета.
Проще - никак.
ответ
никак
переменные можно использовать только в коде
в интерфейс их никак не засунешь
ответ
Попробуй набрать на номерной клаве (справа от стрелок) Alt+0130

23

» WarCraft 3 / Рикошет

Принятый ответ
Похожие вопросы:

ответ
nvc123:
надо давать скил рикошет вроде
Рикошет это тип атаки(тип оружия - edited), такой, у охотниц Лунный чакрум нифига не дает, просто иконка, сам эффект вызван переключением атаки.
Это делает либо апгрейдом либо морфом юнита, так же подсовыванием (убиранием абилки с орб эффектом)
ВНИМАНИЕ - тип атаки снаряд рикошет не сочетается с большинством орб эффектов.
ответ
Делать триггерные Криты и баши.
Дефолтные модификаторы атаки в в варе ( особенно для дальнего боя) не дружат между собой. Так что делаем их кастом версии.
ответ
Область поражения будет не округлой а эпилептической, смещенной на некоторое расстояние вперед, чтобы добится эффекта как от волны силы, чтобы поражать врагов позади цели атаки.
ответ
Самое главное - получить нормаль, вот некоторые функции, которые тебе пригодятся:
float3 GetNormal(float3 a, float3 b, float3 c)
{
	float wrki;
	float3 v1 = float3.create();
	float3 v2 = float3.create();
	float3 normal = float3.create();

	v1.x = a.x - b.x;
	v1.y = a.y - b.y;
	v1.z = a.z - b.z;

	v2.x = b.x - c.x;
	v2.y = b.y - c.y;
	v2.z = b.z - c.z;

	wrki = SquareRoot(sqr(v1.y * v2.z - v1.z * v2.y) + sqr(v1.z * v2.x - v1.x * v2.z) + sqr(v1.x * v2.y - v1.y * v2.x));
	normal.x = (v1.y * v2.z - v1.z * v2.y) / wrki;
	normal.y = (v1.z * v2.x - v1.x * v2.z) / wrki;
	normal.z = (v1.x * v2.y - v1.y * v2.x) / wrki;

	return normal;
}

float DotProduct(float3 v1, float3 v2)
{
	return v1.x*v2.x + v1.y*v2.y + v1.z*v2.z;
}

float3 Reflect(float3 ray, float3 normal)
{
	return -2 * DotProduct(ray, normal) * normal + ray;
}
Далее в функции движения снаряда определяем столкновение с землёй, получаем нормаль и строим вектор отражения по данной нормали и текущей скорости снаряда:
float3 v1 = float3.New(curPos.x+2, curPos.y+2, GetTerrainZ(curPos.x+2, curPos.y+2));
float3 v2 = float3.New(curPos.x+2, curPos.y, GetTerrainZ(curPos.x+2, curPos.y));
float3 v3 = float3.New(curPos.x, curPos.y+2, GetTerrainZ(curPos.x, curPos.y+2));
float3 normal = GetNormal(v1, v2, v3);

float3 reflect = Reflect(curVelocity, normal);

23

» WarCraft 3 / Почему не работает триггер?

Похожие вопросы:

ответ
попробуй поменять событие "юнит использует предмет" на "юнит приводит способность в действие" , а условие - "способность == перст смерти"
ответ
Короче: если ставить юнита, который относится к игроку, но самого игрока нет... То whosyourdaddy не будет работать на всех юнитах этого игрока.
ответ
Вместо
function InitTrig_CreepSpell takes nothing returns nothing
    set gg_trg_CreepSpell = CreateTrigger()
    call TriggerRegisterPlayerUnitEvent(gg_trg_CreepSpell, Player(1), EVENT_PLAYER_UNIT_SPELL_EFFECT, function CreepSpellFilter) 
    call TriggerAddAction(gg_trg_CreepSpell, function CreepSpellActivation)
endfunction
сделай так:
function InitTrig_CreepSpell takes nothing returns nothing
    set gg_trg_CreepSpell = CreateTrigger()
    call TriggerRegisterPlayerUnitEvent(gg_trg_CreepSpell, Player(1), EVENT_PLAYER_UNIT_SPELL_EFFECT, null) //function CreepSpellFilter
    call TriggerAddCondition(gg_trg_CreepSpell, Condition(function CreepSpellFilter))
    call TriggerAddAction(gg_trg_CreepSpell, function CreepSpellActivation)
endfunction
и вот здесь:
if IsUnitEnemy(GetFilterUnit(), Player(10)) then
        set Dummy = CreateUnit(Player(1), 'e004', CasterX, CasterY, bj_RADTODEG*Atan2(TargetY - CasterY, TargetX - CasterX))
		call IssuePointOrder(Dummy, "attackground", TargetX, TargetY)
        call UnitApplyTimedLife(Dummy, 'BTLF', 3)
        set Dummy = null
    endif
поменяй местами IssuePointOrder и UnitApplyTimedLife, чтобы было вот так:
    if IsUnitEnemy(GetFilterUnit(), Player(10)) then
        set Dummy = CreateUnit(Player(1), 'e004', CasterX, CasterY, bj_RADTODEG*Atan2(TargetY - CasterY, TargetX - CasterX))
        call UnitApplyTimedLife(Dummy, 'BTLF', 3)
        call IssuePointOrder(Dummy, "attackground", TargetX, TargetY)
        set Dummy = null
    endif
ответ
not_name:
может скинешь карту удали все что не связанно с предметами посмотрим что не так.
Вот скрин одного из предметов, который перестал работать. Boots of Travel - активка. Мне кажется это просто баг, так как перестает работать какой-то предмет, на самом деле, очень редко. Я думал может есть какое то логическое объяснение, но увы.
Спасибо за ответы.

23

» WarCraft 3 / Инком

Похожие вопросы:

ответ
Пробовать не хочу, но предложу вот, что:
Если цель - защитить карту от подглядывания. То при старте игры или инициализации (если получится) можно запустить триггер с условием Вид: карта разведана is Set == да (процитировал текст условия из Гуи), действие - замкнутый цикл, или вызвать фатальную ошибку, вылет и т.д. Суть в том, что когда игрок запустит карту с такими параметрами, то тупо закрашить варик.
ответ
вопросы типа сделайте за меня не принимаются
по поводу того как это делать написано здесь xgm.guru/p/wc3/articles
ответ
BrEd Pitt, что значит использовать
берёшь и создаёшь юнитов для резервного игрока а потом отдаёшь им приказ
ответ
Возможно listfile.txt повредился.
Перекачай его.
ответ
есть событие - юнит получает урон. в нём отслеживается как жертва, так и наносящий урон. можно хоть через хэш, хоть через структуру Юнита записывать всё, что угодно. Кто от кого конкретно сколько получил урона, кто кому сколько нанёс, сколько провисел на ком-то бафф яда и т.п. (Сначала был loop, а теперь периодический триггер). Каждые N секунд, перебираешь всех юнитов в массиве или списке, и отслеживаешь всё, что надо.
Структура - Unit. У неё есть двойной список с юнитами и уроном от яда (полученным или нанесённым - зависит от того, у кого будет этот список - у жертв или у тех, кто наносит яд). Типа DoubleList. В DoubleList есть элементы DoubleElement. В каждом таком элементе записаны unit и real (урон от яда от этого юнита). При получении урона от яда перебирается список, если юнит уже есть, урон от него (или ему) прибавляется. Если нет, то создаётся новый элемент с новым юнитом.
Периодически у нужных юнитов эти списки перебираются. Всё.

23

» WarCraft 3 / Хелп

Похожие вопросы:

ответ
триггерно тпшим и наносим урон
а вообще научитесь нормально формулировать свои мысли
ответ
через переменную случайное число
ответ
Проверяешь если слот не занят, потом удаляешь жителя.
ответ
Есть триггерные действия на смену текстуры в точке, но там тоже есть предел на их количество.
Где-то здесь на хгме был генератор рандомного ландшафта на триггерах, и там случайно выпадает зимний/осенний ланд и т.д.

23

» WarCraft 3 / Обьекты

Принятый ответ
Похожие вопросы:

ответ
нефиг создавать столько объектов
редактируй напрямую слк
ответ
Нужно использовать dewidgetizer
WarSC:
ты хочешь взломаную карту редактировать
Нет же. Человек просто удалил свои объекты.
ответ
Это пункты во вкладке Юниты: world-editor-tutorials.thehelper.net/uniteditor.php
На том же сайте можешь все остальное поискать.
ответ
Очень просто, на эти скиллы нужно сделать ссылки в коде, что их что то использует, ибо отключить галочку - Удалять не используемые способности, оптимизаторы таким образом удаляют мусор, который не где не прменяется, это как у фрога доте - 400+ юнитов говна, вроде альтернативных ультов феникса, старого сикера, и так далее.
Самый верный способ, создайте на карте всех нужных вам юнитов в некой области из которой они будут удалены при старте игры, легко и просто?
ответ
сделать этот объект в слк и импортировать слк в карту
скорее всего в ро его видно не будет

23

» WarCraft 3 / Отслеживание атак

Похожие вопросы:

ответ
имхо, легче сделать ее самому, а не отлавливать
ответ
на сколько я понял твой триггер срабатывает при получении урона определённым юнитом
и ты вызываешь в нём этот триггер
который наносит урон этому самому юниту
в результате опять срабатывает отлов урона
и опять наносится урон
и опять ...
в общем получается рекурсия и вар выкидывает из за переполнения стека
кстати почему бы не сделать отлов урона в 1 триггере?

23

» WarCraft 3 / Сфера огня

Похожие вопросы:

ответ
делай наработку, прошу тебя)
Ну что за народ.
Ладно, попытка - не пытка. Жди.

Ну вот, готово.
Здесь:
  • ItemCombine1 - то, чего достаточно для разных предметов.
  • ItemСombine2 - учитывает, что предметы могут бить одинаковы.
Минусом подобного на GUI есть то, что на каждый рецепт нужен отдельный триггер.
nvc123 здесь однозначно прав.
Примеры подобного на JASS есть на сайте или могу потом показать коды собственного производства.

23

» WarCraft 3 / Анимации

Принятый ответ
Похожие вопросы:

ответ
MrSlendyBoy, еще раз, анимация может быть только Channel (спелл сам не может выбрать Channel 1, 2 -10) Проигрывайте анимацию по индексу триггерно при применении способности.
ответ
1,2 - это вариации одного и того же состояния, а First, Second, Alternate, Gold и прочие - альтернативы, работающие только с использованием данного тега, причем они также могут иметь свои вариации 1,2 и тд.
ответ
Разобрался. Просто тупо переименовал названия анимаций.
ответ
варкрафт поддерживает множество анимаций, которые никак не используются самой игрой, их можно запускать только триггерами

23

» WarCraft 3 / Перенос jass

Похожие вопросы:

ответ
во первых где дебаг
во вторых не фиг вешать на хэндл таймера всякую фигню
юзай список и пробегай по нему таймером
и будет тебе счастье
в третьих если говоришь что где то ошибка ты должен указать :
  1. строку с ошибкой
  2. доказательства того что она произошла (скрин + лог)
  3. собственные попытки её исправить
в четвёртых предоставить карту
короче либо предоставь всю информацию либо перепиши код по нормальному
как правильно переписать ты сможешь прочесть в статьях
либо увидеть в любом более менее нормальном движке (тот же движок вара)
ответ
Кириллицы в пути к JNGP или к карте нету?
ответ
Там и защиты то никакой нету, деоптимизатором прошёлся да и все, код редактируешь одтельно и вставляешь в уже подготовленную карту.
Вот опен карта, там все изи...

23

» WarCraft 3 / Модель человека из WoW

Принятый ответ
Похожие вопросы:

ответ
~8gabriel8:
Первый пункт звучит очень серьёзно, как раз для обращения по ссылке, другие два ерундовые.

23

» WarCraft 3 / Триггер работает не полностью

Похожие вопросы:

ответ
cJass заменяет TIME на текущее время. С TI##ME он этого делать не должен, но видимо, что-то пошло не так. Поменяй имя переменной на другое и всё.
ответ
Советую проверять бекапы один за другим, и в том, в котором впервые возникает такая проблема, и искать ошибку, она наверняка где-то в изменениях относительно хронологически предыдущей версии.
ответ
Лимит операций примерно 4 к. А у тебя тут поболее 16к.
Обойти лимит операций можно только разнеся действия в разные потоки. К примеру для через таймер.
ответ
Но ведь сами по себе ошибки не происходят.
Причина подобного это А) - невнимательность либо твоя либо автора В) - программное обеспечение
Что бы в дальнейшем все было окей, просто сначала потести карту полностью что бы знать что и как должно быть, а потом вноси изменения, будь внимательней.
Еще советую связаться с автором и поговорить с ним об этой проблеме, или запросить у него еще 1 исходник да бы сверЯться с ним.

23

» WarCraft 3 / MPQ

Похожие вопросы:

ответ
Создание первого мода.

Инструкция для чайников

1.Берём лаунчер Алексея.
2.Берём программу для работы с MPQ(хотя можно создать доп.кампанию для варкрафта и переименовать в mpq).
3.Сбрасываем ваши файлы в архив(или импортируем в кампанию).
4.Запускаем.
(Можно обойтись без лаунчера и использовать MPQDraft и преаброзовать mpq в exe.Но лучше поддержать отечественные разработки)
5.Хлопаем в ладошки и кричим ураааааа!
=)
ответ
На карте стоит защита, её нужно снять...
Снимите сами или это сделают за вас, но за спасибо вряд-ли кто будет это делать.
Лекция по снятию защит - 100 руб./час.
ответ
RotceV, Создайте новую, совершенно пустую карту, поставьте исходную позицию в центре и нажмите вкладку - Редактор звука (F5), в окне слева будут стандартные звкуовые файлы варкравта, выберите любой, щелкните правой кнопкой мыши на любом звуке и выбирите пункт в всплывающем меню - "использовать как звук"
В окне слева появится звуковая переменная, вы сможете настроить её по желанию, но это неважно. Сохраните карту.
Выколупайте код war3map.j из только что сохраненной карты, и ищите функцию - InitSounds, там вы увидите как на jass создаются и настраиваются звуковые переменные и как ваши настройки в редакторе звуков переносятся на jass код, удачи...

23

» WarCraft 3 / SetUnitX не работает

Похожие вопросы:

ответ
булэкспры удалять не надо
читайте
ответ
во первых где дебаг
во вторых не фиг вешать на хэндл таймера всякую фигню
юзай список и пробегай по нему таймером
и будет тебе счастье
в третьих если говоришь что где то ошибка ты должен указать :
  1. строку с ошибкой
  2. доказательства того что она произошла (скрин + лог)
  3. собственные попытки её исправить
в четвёртых предоставить карту
короче либо предоставь всю информацию либо перепиши код по нормальному
как правильно переписать ты сможешь прочесть в статьях
либо увидеть в любом более менее нормальном движке (тот же движок вара)
ответ
Всё, разобрался, вопрос снимаю)
ответ
local location loc=GetUnitLoc(GetEnumUnit())
local location tcLoc=GetUnitLoc(udg_topot_caster)
local real a=AngleBetweenPoints(tcLoc, loc)
call SetUnitX(GetEnumUnit(),GetLocationX(loc) +CosBJ(a) * 10.00 )
call SetUnitY(GetEnumUnit(),GetLocationY(loc) +SinBJ(a) * 10.00 )
call RemoveLocation(tcLoc)
call RemoveLocation(loc)
set tcLoc=null
set loc=null

23

» WarCraft 3 / Значение функций

Похожие вопросы:

ответ
Sync функции нужны для синхроеизации локальных данных через кеш.
ответ
тормозит у вас явно из-за кривого кода, а не того чего вы думаете
ответ
Перегрузка макросов

Определение в пределах одной области видимости нескольких макросов с одинаковыми именами не вызовет ошибки, если они отличаются количеством принимаемых аргументов. Такие макросы называются перегружеными. В зависимости от количества переданных при вызове аргументов, будет вызван тот или иной из перегруженных макросов.

  define {
      msg(text)              = DisplayTextToPlayer(GetLocalPlayer(), text, 0, 0)
      msg(text,playerid)     = DisplayTextToPlayer(Player(playerid), text, 0, 0)
      msg(text,playerid,x,y) = DisplayTextToPlayer(Player(playerid), text, x, y)
  }
  
  nothing test() {
      msg("test 1")
      msg("test 2", 1)
      msg("test 3", 2, 0.1, 0.1)
  }
будет транслировано в следующее:

  function test takes nothing returns nothing
      call DisplayTextToPlayer(GetLocalPlayer(), "test 1", 0, 0)
      call DisplayTextToPlayer(Player(1), "test 2", 0, 0)
      call DisplayTextToPlayer(Player(2), "test 3", 0.1, 0.1)
  endfunction
Внимание! Если в перегруженной группе есть макрос, не принимающий аргументов, его все равно необходимо записывать с указанием пустых скобок после него.
а так jass писался очень давно
ответ
вроде fly автоматом генерит бд и заполняет её данными из ро
ну или самому делать бд/скрипт для авто заполнения бд
иначе никак

23

» WarCraft 3 / Оптимизация карты.

Похожие вопросы:

ответ
~16GB:
юзай Wc3SLKOpt.exe
ответ
При конвертации моделей из игр в MDX их вес велик как и вес их текстур ! Я оптимизирую и сжимаю модель через MDLvis а текстуры через BLP Laboratory но их вес все еще внушителен ( Есть ли другие варианты среза веса без дефектов материала ?
Нет. Только удаление лишних анимаций. Остальную оптимизацию веса сделает mdlvis.
При импорте некоторых моделей в карту возникает проблема с их выбором при манипуляции ( Передвижения ) словно их Выбор отсутствует , Думаю некоторые с подобным сталкивались ...
Если модель нельзя выделить в игре курсором, у неё отсутствуют collision shapes (формы коллизии). Их можно добавить в War3ModelEditor -> Окна -> Редактор узлов -> правый клик -> Создать форму - > отредактировать размеры и положение. Их можно добавить несколько, чтобы покрыть модель целиком. Они отвечают за взаимодействие модели с курсором.

Один ресурс - один вопрос, после пойдут замечания.
ответ
В конце ноября 2016 года Blizzard выпустили патч, позволяющий играть по сети в карты до 128 Мб.
ответ
ничем, кроме названий переменных. попробуй отключить морфинг имен
ответ
ClotPh:
Кстати да, тоже интересно. Всегда просто удаляю второй. Я понимаю, что там скорее всего что-то несет информационную ценность, но оно бы тогда хотя бы настраивалось как-то в оптимизаторе, создавать его или не создавать и/или удалить после выполнения оптимизации, а то немного раздражает мусор руками чистить. Если такие настройки есть - подскажите плз.
Это скрип карты, для анализа на ошибки.

23

» 3D Арт и VR / 3Ds max

Похожие вопросы:

ответ
Попробуй конвертить через плагин NeoDex. Если надо, то здесь имеется урок по его использованию.
ответ
Narkranoth, а тот "уже не не поддерживается". Арттулзы писались конкретно под 2012 Макс и никакой иной.

23

» WarCraft 3 / Срочно прошу причины фатала

Похожие вопросы:

ответ
вылет при попытке чтения данных абилки из таблиц, почему-то передали вместо ссылки на адрес уровня 0. ты нигде там не сломал ссылку на актуальный уровень? Там же перелинковка через каждые 0x60 - ссылка на адрес следущего уровня. возможно, нужный уровень был там, где почему-то в адресе осталось 0

23

» WarCraft 3 / Jass: Ресурсы

Похожие вопросы:

ответ
Думал использовать чисто для экономии времени. По хорошему конечно надо самому написать системки, да все руки не доходят.
Может тогда подскажите, есть ли готовые более менее пригодные для использования. Сам всегда делал через торнадо, разве это уже не модно?
ответ
По интернету полно гаидов по созданию карт - это Xgm, wc3maps, Hiveworkshop ( If you know English)
Если тебе нужен совет, заливай сюда-же в раздел вопросов, всегда помогут.
Учись на примерах: Вскрывай другие карты и смотри триггеры или потырь ланд.
И если честно то база знаний у нас на сайте подобрана лучше где еще либо, все по полочкам разложено.
ответ
Лимит операций, обычно это беда настигает заядлых гуишников.
На jass обычно нету таких проблем.
Создайте таймер с периодом .00 сек и запускайте им функции инициализации триггеров.
функция типа InitTrig_Имя триггера - это функция инициализации триггера, она вызывается из функции InitCustomTriggers, но если этих вызовов очень много то функция упирается в лимит операций и поток завершается так и не создав все триггеры.
ответ
Ige, потому что делал 2 сек после инициализация.... Так что выложу исправлений и оптимизированный мемхак с инициализацией...
PS Терь работает нормально при инициализация с мемхак
PSS Пользуйтесь на здоровье, планирую сделать набор для rpg с мемхак